# Chapter 3: Installation and Quick Start

This chapter explains how to install Helix Universal Server on Windows and UNIX platforms. It also introduces you to Helix Administrator, the Web-based tool for configuring Helix Universal Server. As soon as you start Helix Universal Server, it is ready to stream media, and the last section walks you through the processes for streaming clips and broadcasting live input.

# Understanding Installation Issues

Before you install Helix Universal Server, you need to make basic set-up and deployment decisions, as described in the following sections.

## Firewalls and Helix Universal Server

You need to choose where to place Helix Universal Server in relation to firewalls—either your firewall or an outside organization's firewall—for optimal communication. Chapter 11 explains general issues involving firewalls. If your organization has a firewall, and you are not sure of its impact on Helix Universal Server communication, be sure to read "Placing Helix Universal Server in a Network".

| Tip: If you have questions about which ports are available on your network to allow traffic through a firewall, consult with your firewall administrator.

## Web Servers and Helix Universal Server

RealNetworks suggests that you do not install Helix Universal Server on the same physical machine that runs your Web server. This eliminates conflicts over ports, and helps to balance loads so that Helix Universal Server is not affected by heavy Web server use, and vice versa. If you need to install Helix Universal Server on the same computer as your Web server, observe the following precautions.

### HTTP Port Resolution

Although HTTP is not a streaming protocol, Helix Universal Server supports HTTP, primarily to handle media requests made by Web browsers, as well as to operate with the HTML-based Helix Administrator. Web browsers and media players typically make HTTP requests on port 80, and if a Web server and Helix Universal Server reside on the same computer, they cannot both use port 80. There are two ways to avoid this port conflict.

#### Use a Nonstandard HTTP Port for Helix Universal Server

During installation, you can specify a different HTTP port for Helix Universal Server. In this case, though, all HTTP URLs to Helix Universal Server must specify the port number so that clients make the request on the correct port. This creates potential for errors in writing URLs, and may limit client access if firewalls restrict HTTP requests to port 80.

| For More Information: See "Handling Communication through Nonstandard Ports" and "Streaming to Client Software Behind Firewalls".

#### Bind Helix Universal Server to a Different IP Address

The second, better approach is to use two IP addresses for the same computer, one for Helix Universal Server, the other for the Web server. This requires a multi-homed machine that has two or more network interfaces. In this configuration, you assign an IP address to each network interface, then bind Helix Universal Server to one of the IP addresses. In this way, Helix Universal Server and your Web server both use port 80 on different network addresses.

Note, though, that Helix Universal Server may fail to start after installation because of an HTTP port conflict if all of the following conditions are true:

- You install Helix Universal Server on a multihomed machine that also runs your Web server.

- Your Web server uses the IP address assigned to network interface 0.

- Your Web server uses port 80 for HTTP communications.

- You choose port 80 for Helix Universal Server HTTP communications.

The conflict arises because Helix Universal Server binds to network interface 0 after installation. If the Web server is using this address, the two servers will both try to claim port 80. (No problem arises, though, if the Web server uses a network interface other than 0.) The following procedure explains how to work around this problem.

| To prevent an HTTP port 80 conflict on a multihomed machine:

1. When installing Helix Universal Server, choose any unused port other than 80 for HTTP.

2. After installation, start Helix Universal Server and bind it to a different IP address on your multihomed machine, as described in "Binding to an IP Address".

3. Change Helix Universal Server's HTTP port to 80 as described in "Defining Communications Ports".

4. Restart Helix Universal Server.

### Web Server MIME Types

Helix Universal Server works with any Web server that supports configurable MIME types. The following table lists the recommended MIME types. Helix Universal Server requires only that the Web server use the MIME types given below for the `.ram` and `.rpm` extensions. See your Web server documentation for information about defining MIME types.

Web Server MIME Types and Extensions
MIME Types | Extensions
--- | ---
`audio/x-pn-realaudio` | `ra, rm, ram`
`audio/x-pn-realaudio-plugin` | `rpm`
`application/x-pn-realmedia` | `rp`
`application/smil` | `smi, smil`
`application/sdp` | `sdp`
`image/gif` | `gif`
`image/jpg` | `jpg, jpeg`
`text/html` | `html, htm`

| For More Information: Helix Universal Server can also deliver files over HTTP. For information about configuring its MIME types, see "Adding MIME Types for HTTP Communication".

# Installing Helix Universal Server

To install Helix Universal Server, you need a binary installation file and a license file, which enables Helix Universal Server features. Although you can install Helix Universal Server without the license file, Helix Universal Server will not operate until you have obtained a valid license file. License files are delivered by e-mail after you download or purchase Helix Universal Server. To install Helix Universal Server as a Windows NT Service, you must have administrative access.

| To install Helix Universal Server:

1. Launch the binary setup file you downloaded. If you have a Helix Universal Server installation CD, open the folder named for the operating system you are using, and double-click the setup file.

2. Read the installation recommendations and press Enter.

3. Enter the path to the license file you received from RealNetworks, and press Enter. The installation process copies the license file to the `License` subdirectory under the main Helix Universal Server directory. On startup, Helix Universal Server reads that copy of the license.

4. Read the end-user license agreement, signifying your agreement to its terms by pressing Enter.

5. Enter a path where you want to install Helix Universal Server, or accept the default path on Windows. Examples in this guide assume that you've chosen the default path.

| Note: On Windows, the default installation path for Helix Universal Server differs from previous versions of RealSystem Server. For more information, see "Upgrading in a Different Directory".

6. Enter a user name and password, and then confirm your password by entering it again. Your user name and password are required to access various Helix Universal Server features, such as Helix Administrator. Choose a password that is difficult to guess, and that includes both letters and numbers. The password is case-sensitive.

7. In the next set of screens, you define ports that Helix Universal Server uses for the PNA, RTSP, HTTP, and MMS protocols, as well as the port used by Helix Administrator. RealNetworks recommends accepting the default ports, unless those port values will cause conflicts with other applications. Note the following:

- You can change the port settings later, as described in "Defining Communications Ports".

- If you use a nonstandard port for a streaming protocol, you will need to include the port number in URLs, as described in "Handling Communication through Nonstandard Ports". For more information about streaming protocols, see "Application-Layer Protocols".

- You do not need to configure transport-layer protocols such as TCP and UDP. Helix Universal Server and the client automatically select the transport protocol. After installation, you can restrict the UDP port range, as described in "Changing Port Assignments". For background on TCP and UDP, see "Transport-Layer Protocols".

- You need the Admin port number to connect to Helix Administrator from a Web browser. As a security feature, the installer generates this port number randomly. RealNetworks recommends that you accept the default, but you may change the value if you wish, or you know that the value will conflict with another port assignment. In either case, remember the port number, or record it in a secure location.

- On UNIX, the default value for the RTSP port is lower than 1024, meaning that you have to log in as `root` to start Helix Universal Server if you accept the default value.

8. On Windows, the default installation sets up Helix Universal Server as a service. This is recommended, but you can prevent this by unchecking the Run as NT Service box. If you choose, you can later set up Helix Universal Server to run as a service, as described in "Configuring Helix Universal Server as a Windows Service".

9. In the final confirmation screen, review and accept the installation information to complete the installation process.

## Upgrading in a Different Directory

If you are upgrading, and you install Helix Universal Server in a path that differs from that of your previous RealSystem Server, move your existing content from the previous installation directory to the new directory after the installation. You'll need to do this, for example, if you chose the default installation path on Windows:

    C:\Program Files\Real\Helix Server

Content you need to move includes files in the `Content` and `Secure` directories, and, optionally, the `Logs` directory. If you are using authentication, you'll also need to move the files described in Appendix C.

If you plan to use a configuration file from an earlier version of RealSystem Server, you need to edit the configuration information manually to reflect the new installation directory. Look for the variables that give full paths, and change their values accordingly.

| Warning! Because editing the configuration file with a text editor can potentially disable Helix Universal Server, be sure to read Appendix A before attempting modifications.

## Reinstalling Helix Universal Server in the Same Directory

Reinstallation is generally not necessary, but if needed, you can reinstall Helix Universal Server by repeating the installation procedure described in "Installing Helix Universal Server". A reinstallation does not affect media content, but it resets your Helix Universal Server configuration values to their defaults. If you tailored your system configuration after the initial installation, the following tips allow you to retain your data and make your reinstallation process smoother:

- Back up the configuration file (`rmserver.cfg`) to preserve the configuration information. After the reinstallation, replace the file created by the installer with your backup.

- Back up the `slta.cfg` file if you used that file for running SLTA. For more information on SLTA, see Chapter 10.

- Back up any authentication databases (`adm_b_db`, `con_r_db`, and so on) that you've revised or added. This step is necessary only if you've added more users and passwords for authentication than those added during installation. Appendix C explains authentication databases.

- Note the value of the Admin port (Server Setup>Ports). If you bookmarked Helix Administrator in your browser, specify the same Admin port during the reinstallation to keep the bookmark functional.

- A reinstallation does not affect cache files, access logs, or error logs. It is therefore not necessary to back up these files before reinstallation. These files reside in the `Cache` and `Logs` subdirectories of the main installation directory.

# Running Helix Universal Server

This section describes how to start and stop Helix Universal Server on Windows and UNIX. It lists command line options that you can use when starting Helix Universal Server manually. Additionally, it explains how to configure Helix Universal Server as a Windows service if you did not select that option during installation.

## Starting Helix Universal Server

When you start Helix Universal Server manually, you can select which configuration file you want to use. You can also specify command line options on both Windows and UNIX. As described in "Restarting Helix Universal Server", you can use Helix Administrator to restart Helix Universal Server following a configuration change.

### Starting on Windows

In its default Windows installation, Helix Universal Server is set up as service named "`Helix Server`." In this case, Helix Universal Server always runs in the background, and you do not need to start it. If you did not install Helix Universal Server as a Windows service, you can start it from the Start menu or the command line.

#### Starting Up from the Start Menu

From the Start menu, select Programs>Helix Server>Helix Server. Helix Universal Server loads the default configuration file, `rmserver.cfg`.

#### Starting Up from the Command Line

From the Start menu, open the command prompt. Navigate to the Helix Universal Server folder, and enter the following command to start Helix Universal Server with its default configuration file. You can use a different configuration file if you wish:

    Bin\rmserver rmserver.cfg

### Starting on UNIX

If you performed a default installation of Helix Universal Server, the RTSP port is set lower than 1024, requiring the user who starts Helix Universal Server to log in as `root`. If you do not want Helix Universal Server to inherit `root` privileges, you can switch Helix Universal Server to another user and group name immediately after it starts up. For instructions, refer to "Setting UNIX User and Group Names".

You can start Helix Universal Server as an application or as a background process. The following procedure uses the default configuration file (`rmserver.cfg`), but you can specify a different file. If your machine has multiple processors, first see "Setting Processor Count".

| To start Helix Universal Server on UNIX:

1. Start any command shell.

2. Navigate to the main Helix Universal Server installation directory.

| Warning! If you do not start Helix Universal Server from its `Bin` directory, it cannot resolve the relative paths in the configuration file.

3. Choose one of the following options:

1. Start Helix Universal Server in the background with the following command:

    Bin/rmserver rmserver.cfg &

2. Start Helix Universal Server as an application:

    Bin/rmserver rmserver.cfg

3. Optionally, you can limit the amount of memory that Helix Universal Server uses by including the `-m` parameter, where the number after `-m` specifies the amount of memory in Megabytes (must be greater than 32). The following example starts Helix Universal Server as an application:

    Bin/rmserver rmserver.cfg -m 512

The next example starts Helix Universal Server as a background process:

    Bin/rmserver rmserver.cfg -m 512 &

#### Process ID (PID)

Helix Universal Server creates a text file that records the current value of the process ID of the parent Helix Universal Server process, `rmserver`. The file is stored in the directory indicated by the `PidPath` variable, and is named `rmserver.pid` at installation. If `PidPath` is omitted from the configuration file, Helix Universal Server stores the information in the directory specified by the `LogPath` variable.

#### Setting Processor Count

On UNIX systems with multiple CPUs, you should set the `ProcessorCount` variable in the configuration file to the number of processors available to Helix Universal Server. If this variable is not configured, or set to the default value of `0`, Helix Universal Server uses its automatic processor test, which may not be accurate if the operating system is busy with other tasks while the test runs. In addition, if you are running Helix Universal Server with a user ID other than `root`, the CPU detection system is not enabled.

| Tip: Be sure to back up the configuration file before you edit it. Appendix A explains the configuration file syntax.

| To set the processor count in the configuration file:

1. Using any text editor, ope the Helix Universal Server configuration file, which resides in the main installation directory and is named `rmserver.cfg` by default.

2. Set the `ProcessorCount` variable to the number of processors on your machine. For example, on a host system with two processors, the setting is:

    <Var ProcessorCount="2"/>

3. Save the changes.

4. Start the `rmserver` process with the `--sct` command. For example:

    ./rmserver ../rmserver.cfg -m 512 --sct &

starts Helix Universal Server with 512 MB of memory while skipping the CPU detection test. See "Starting on UNIX" for more startup options.

### Using Command Line Options

On both Windows and UNIX, you can include options when starting Helix Universal Server from the command line. In most cases, use these options for debugging. You list options after the `rmserver` executable name, preceding each option with one or two hyphens as shown here:

    Bin/rmserver -v rmserver.cfg

Command line options have both short names and long names, as summarized in the following table. Additional, Windows-only command line options are described in "Configuring Helix Universal Server as a Windows Service".

Command Line Options on Windows and UNIX
Short Name | Long Name | Function
--- | --- | ---
`-v` | `--version` | Print version number and exit.
`-h` | `--help` | Print command line help and exit.
`--out <``file``>` | `--output-file <``file``>` | Redirect console output to file.
`--rss [``n``]` | `--report-server-stats [``n``]` | Report server statistics every `n` seconds. The default is 60 seconds.
`--sct` | `--skip-cpu-test` | Use configuration file CPU setting.

## Stopping Helix Universal Server

It's generally not necessary to stop Helix Universal Server when it's running. If you make configuration changes that require a restart, you can restart through Helix Administrator, as described in "Restarting Helix Universal Server".

### Shutting Down on Windows

If Helix Universal Server was started as a Windows service, stop it through the Services control panel. Give the Start>Settings>Control Panel command and double-click Services. Locate `Helix Server` on the list (your service name may be different), highlight it, and click Stop.

If you started Helix Universal Server manually, switch to the command window and press Ctrl+c. You can also use the Task Manager (Ctrl+Alt+Del) to end the `Helix Server` application.

### Shutting Down on UNIX

To stop Helix Universal Server on UNIX, obtain the parent process identification number, and then issue the `kill` command with that process number. The process ID is stored in the `rmserver.pid` file, which is usually kept in the `Logs` directory. (The `PIDPath` variable in the configuration file specifies this location.) You can perform both actions with one command. From the command line, navigate to the directory that contains the Helix Universal Server PID file, and type the following, where `pidfile` is the name of the`PID` file:

    kill `cat pidfile`

## Configuring Helix Universal Server as a Windows Service

If you did not set up Helix Universal Server to run as a Windows service during installation, you can do so at any time by following the procedure below.

| To set up Helix Universal Server as a Windows service:

1. Stop Helix Universal Server.

2. From the Start menu, open the command prompt and navigate to the Helix Universal Server `Bin` directory.

3. Import the configuration file you want to use into a specific key in the Windows NT registry by typing the following:

    rmserver.exe -import[:key] configuration_file

using the following values:

`key` | The Windows NT registry key name you want to use. If you omit it, the default name `Config` is substituted.
`configuration_file` | The path and file name of the configuration file to import. The configuration file must use absolute paths for variables such as `BasePath`. Helix Universal Server does not recognize relative paths while running as a service.

For example, the following command:

    rmserver.exe -import:Server1   ..\rmserver.cfg

imports all of the values in the `rmserver.cfg` file into the following key of the Windows registry:

    HKEY_CLASSES_ROOT\Software\RealNetworks\Helix Server\9.0\Server1

Note that you can then start Helix Universal Server using this configuration by typing the following at a command line:

    rmserver.exe registry:Server1

4. Install the service by typing the following command at the command prompt:

    rmserver.exe -install[:ServiceName] "parameters"

using the following variables:

`ServiceName` | The name that will appear in the Services dialog box. If you omit `ServiceName`, `Helix Server` is used.
`parameters` | Either the name of the configuration file, or the Windows registry and key name, as entered in Step 3. The format of the Windows NT registry and key name is `registry:``key`. Any command line parameters can be used.

| Note: The quotation marks surrounding `parameters` are required. In addition, you must supply the path to the configuration file. Helix Universal Server will not start if it cannot find the configuration file.

The next time you start Helix Universal Server from the Services dialog, it will use the settings specified in `parameters`, and will be configured to start automatically. For example, the following command:

    rmserver.exe -install:HelixInternet "registry:Server1"

installs Helix Universal Server with the service name HelixInternet, and uses the settings in the `Server1` key.

5. Start the service. In the Services control panel, select the name you used for `ServiceName`, and click Start.

### Removing Helix Universal Server from the Services List

At a command prompt, type the following:

    rmserver.exe -remove[:ServiceName]

in which `ServiceName` is the optional name of the service. If you omitted a service name when you installed the service, you can omit it here to indicate the default value `Helix Server`.

# Using Helix Administrator

Helix Administrator is Helix Universal Server's HTML-based, graphical user interface. It allows you to modify and manage Helix Universal Server from a browser anywhere on your network. The following sections explain how to start Helix Administrator and use it to manage your Helix Universal Server configuration.

## Starting Helix Administrator

To start Helix Administrator, you need to know the port number it uses, as well as the user name and password selected during Helix Universal Server installation. The password is stored in the `MonitorPassword` variable of the configuration file. For background on the configuration file, see Appendix A.

| To start Helix Administrator:

1. Start Helix Universal Server if it is not already running.

2. In a Web browser, type the following address:

    http://address:AdminPort/admin/index.html

If your browser is on the same computer as Helix Universal Server, you can typically use the `localhost` address:

    http://localhost:AdminPort/admin/index.html

3. Enter the user name and password chosen during installation. The password is case-sensitive.

4. Click OK to start Helix Administrator.

| Tip: You can create additional user names and passwords to let other people access Helix Administrator. For more information, see "Administrator Authentication".

## Using the Interface

Helix Administrator consists of HTML pages that you use to configure Helix Universal Server. The left-hand frame groups features into functional areas, as described in "Helix Administrator Sections". Pages that display in the right- hand frame typically consist of forms that include fields and pull-down lists. In pages that list multiple elements, you can use the control icons depicted in the following illustration.

##### Helix Administrator Controls

When you change configuration information on a Helix Administrator page, click Apply at the bottom of the page to save the changes. An arrow appears next to the Apply button and the page title tab to indicate that changes require saving. A confirmation dialog appears when you click Apply. Note that Helix Administrator discards changes if you navigate to a different page before clicking Apply. As well, clicking Reset returns the current page to its stored values.

| Tip: If you are familiar with earlier versions of RealSystem Server, note that you no longer have to click an Edit button to update an element definition. You simply enter the new element information in the appropriate field, and click Apply at the bottom of the page to save the change.

## Restarting Helix Universal Server

Some configuration changes you make in Helix Administrator require a Helix Universal Server restart, which breaks open connections for live events or clips streamed on demand. It's best, therefore, to make these changes during periods of low use. The Helix Administrator interface indicates feature changes that require a Helix Universal Server restart. It also prompts you when a change requires a server restart when you click Apply. Click the Restart Server button to restart Helix Universal Server.

### Queuing Changes for a Later Restart

It is not necessary to restart Helix Universal Server immediately after you make a configuration change. In this case, the Pending Changes flag appears in the upper-right corner of Helix Administrator. This flag reminds you that all pending changes will go into effect the next time Helix Universal Server is started.

## Helix Administrator Sections

Helix Administrator's left-hand navigation pane groups Helix Universal Server features under functional areas such as Broadcasting. Click the name of a functional area to expand or collapse the list of features it contains. The following tables summarize all features, and point you to the sections of this manual that explain each feature. Features vary according to your operating system and your license agreement, so you may not see all features listed here.

### Server Setup

The server setup features let you configure the basic functions of Helix Universal Server. Many of these features are preconfigured at installation.

Server Setup Features
Feature | Function | Reference
--- | --- | ---
Ports | Define ports for communications protocols. | click here
IP Binding | Select IP addresses Helix Universal Server uses. | click here
MIME Types | Create additional Web serving MIME types. | click here
Connection Control | Limit connections by type or bandwidth. | click here
Redundant Servers | Define failover servers for on-demand content. | click here
Mount Points | Create mount points for on-demand content. | click here
URL Aliasing | Shorten long URLs by creating aliases. | click here
HTTP Delivery | Define Web serving directories. | click here
Cache Directives | Control proxy caching and splitting. | click here
Shared Licensing | Set up license publishers and subscribers. | click here
User/Group Name | Create UNIX user and group name. | click here
Media Samples | Play sample files. | click here

### Security

The security features let you limit connections to Helix Universal Server, as well as set up user name and password validation for content viewers.

Security Features
Feature | Function | Reference
--- | --- | ---
Access Control | Limit media player connections by IP address. | click here
User Databases | Select authentication databases. | click here
Authentication | Create authentication passwords and realms. | click here click here
Commerce | Define commerce rules. | click here

### Logging and Monitoring

The logging and monitoring features let you view current Helix Universal Server activity, as well as review past, recorded activity.

Logging and Monitoring Features
Feature | Function | Reference
--- | --- | ---
Server Monitor | Display statuses of current connections. | click here
Access and Error Logging | Compile user and error statistics. | click here
Custom Logging | Create templates for reports. | click here
License Monitor | View connections in distributed license pool. | click here

### Broadcasting

Using the broadcasting features, you can unicast live events in any media format.

Broadcasting Features
Feature | Function | Reference
--- | --- | ---
RealNetworks Encoding | Broadcast in the RealMedia format | click here
QuickTime and RTP Encoding | Broadcast QuickTime or RTP-based media. | click here
Windows Media Encoding | Broadcast Windows Media. | click here
Live Archiving | Archive RealMedia broadcasts. | click here
Broadcast Redundancy | Define backup encoder features. | click here

### Broadcast Distribution

Broadcast distribution builds on the basic broadcasting features, enabling you to multicast live events, as well as distribute broadcast streams to different Helix Universal Servers.

Broadcast Distribution Features
Feature | Function | Reference
--- | --- | ---
Transmitter | Set up a splitting transmitter. | click here
Receiver | Define a splitting receiver. | click here
Scalable Multicasting | Multicast to large numbers of RealPlayers. | click here
Back-Channel Multicasting | Multicast to RealPlayers using a control channel. | click here
Windows Media Multicasting | Multicast in the Windows Media format. | click here
Session Announcement | Publicize a multicast automatically. | click here

### Content Management

The content management section groups useful features for managing on- demand clips.

Content Management Features
Feature | Function | Reference
--- | --- | ---
Content Caching | Distribute on-demand content to various servers. | click here
ISP Hosting | Provide streaming services for ISP customers. | click here
Content Browsing | List all content stored on your Helix Universal Server. | click here
View Source | Make source markup and clip information available. | click here

### Advertising

The advertising features appear only if you use Helix Universal Server's Advertising Application.

Advertising Features
Feature | Function | Reference
--- | --- | ---
Ad Serving | Create ad serving mount points. | click here
Ad SMIL Generator | Generate SMIL files with ads automatically. | click here
Ad Timeouts | Define ad serving timeouts. | click here

## License File Information

The text-based license file resides in the `License` subdirectory of Helix Universal Server's installation directory. It is in an XML format that you can read with any text editor. Making any changes invalidates the file, however. You can also display the license file through Helix Administrator by clicking About. You generally do not need to do anything with the license file, as long as Helix Universal Server reads it correctly on startup.

| Tip: If you have multiple license files, Helix Administrator shows the values for all of them at once. In this case, you need to read each file individually and calculate additive features, such as the total number of licensed streams.

| Note: If all license files are invalid, Helix Universal Server reports an error message, adds the error to the error log file, and shuts down. To resolve this, contact RealNetworks for a valid license file.

## Testing Your Installation

In Helix Administrator, click Server Setup>Media Samples to display a page containing links to sample clips. You can quickly test your installation by playing these clips if RealOne Player or another supported media player is installed on your computer. To play RealVideo 9 in RealOne Player, for example, click Play RealVideo 9 Sample.

If your Helix Universal Server machine does not include a supported media player, you can play a sample clip from another machine on your network by logging into Helix Administrator from that machine. You can also open a clip directly in a media player. In RealOne Player, for example, give the File>Open Location command, then enter a media clip URL such as this:

    rtsp://helixserver.example.com/real9video.rm

| For More Information: Chapter 5 explains media clip URLs.

# Quick Start Tutorials for Streaming Media

This section gives you step-by-step instructions for performing the basic tasks of streaming a prerecorded clip, and setting up a simple broadcast. These steps will familiarize you with these basic procedures. Keep in mind that there are many options for encoding, streaming, and broadcasting, as described in this guide and Helix Producer User's Guide.

## Quick Start Requirements

To perform these tasks, you'll need the following software and hardware on a computer other than the one that runs Helix Universal Server:

- RealOne Player

- multimedia equipment:

- CD player and software

- sound card

- speakers

- Helix Producer

This section provides instructions for using Helix Producer. Although you can use an earlier version of RealProducer, the encoding steps will be different, and you should refer to your user's guide or online help for encoding instructions.

- Web browser

- HTML editor or text editor for creating an HTML page (optional)

| Note: Helix Producer and RealOne Player are included with some Helix Universal Server packages. They are also available in free download versions from the RealNetworks Web site at http://www.realnetworks.com and http://www.real.com.

## Creating and Streaming a Clip on Demand

This section explains how to encode and stream a simple music clip. To do this, you'll need a music CD and Helix Producer.

### Step 1: Encode a Music Clip

This step encodes a streaming music clip directly from a music CD. Perform this step on the computer that has Helix Producer installed.

| To encode the music clip:

1. Place a music CD in the computer's CD tray, and play it using the computer's CD player.

| Note: RealJukebox and RealOne Player do not initialize the audio device needed for encoding. If one of these programs launches to play the CD, stop the playback, start the computer's general CD player, and play the CD.

2. Start Helix Producer and give the File>New Job command.

3. In the left-hand input section, click the Devices radio button, and select the audio device from the Audio pull-down list.

4. Choose File>Add Destination File, set the file name `ondemand.rm`, and choose a directory for the clip.

5. Click the Encode button, wait at least one minute, and click Stop.

### Step 2: Transfer the Music Clip to the Content Directory

Copy the `ondemand.rm` clip you created in the preceding step to the Helix Universal Server `Content` directory. On Windows NT/2000/XP, the path is:

    C:\Program Files\Real\Helix Server\Content

On UNIX, installation locations may vary, but paths look like this::

    /usr/local/Real/HelixServer/Content

### Step 3: Write a Web Page Link (Optional)

Create a link for the clip in an HTML page served by your Web server. Use the following link format, in which you substitute your Helix Universal Server's computer name or IP address for `address`:

    <a href="http://address:HTTPport/ramgen/ondemand.rm">Click here</a>

You do not need to include the HTTP port number if you selected port 80 during the installation. Here is an example:

    <a href="http://helixserver.example.com/ramgen/ondemand.rm">Click here</a>

If your RealOne Player is on the same machine as your Helix Universal Server, you can typically use the local host address:

    <a href="http://localhost/ramgen/ondemand.rm">Click here</a>

| For More Information: The `/ramgen/` parameter, which is described in "Launching Media Players and Opening URLs", causes the Web browser to start RealOne Player.

### Step 4: Play the Clip

If you added the link to a Web page, browse the page and click the link. If you did not create a Web page link, launch RealOne Player, give the File>Open Location command, and enter the following URL:

    rtsp://address:RTSPPort/ondemand.rm

You do not need to include the RTSP port number if you selected port 554 during the installation. Here is an example:

    rtsp://helixserver.example.com/ondemand.rm

If your RealOne Player is on the same machine as your Helix Universal Server, you can typically use the local host address:

    rtsp://localhost/ondemand.rm

## Broadcasting a Stream

This section explains the basic steps for broadcasting a stream without creating a clip. Perform this step on the computer that has Helix Producer installed.

### Step 1: Encode a Music Stream

This step sets up Helix Producer to encode a continuous stream from the music CD, and send the stream to Helix Universal Server.

| To create a live stream:

1. Place a music CD in the computer's CD tray, and play it using the computer's CD player.

| Note: RealJukebox and RealOne Player do not initialize the audio device needed for encoding. If one of these programs launches to play the CD, stop the playback, start the computer's general CD player, and play the CD.

2. Start Helix Producer and give the File>New Job command.

3. In the left-hand input section, click the Devices radio button, and select the audio device from the Audio pull-down list.

4. Choose File>Add Destination Server. In the dialog box, leave the default settings, except for the following:

1. Enter any destination name, such as My Helix Universal Server.

2. Use the stream name `live.rm`.

3. For the server address, enter the IP address of the computer on which you installed Helix Universal Server. If your Helix Producer and Helix Universal Server are on the same machine, you can use `127.0.0.1`.

4. In the User Name and Password boxes, type the same user name and password you use for logging in to Helix Administrator.

5. If you encoded an on-demand clip as described in the preceding tutorial, select that clip name in the Destination box, then click the trash icon to delete it. Your destination server name should be highlighted in the Destination box.

6. Click the Encode button. After you have verified the broadcast in the following steps, you can turn off the encoding by clicking Stop.

### Step 2: Write a Web Page Link (Optional)

Create a link for the clip in an HTML page served by your Web server. Use the following link format, in which you substitute your Helix Universal Server's computer name or IP address for `address`:

    <a href="http://address:HTTPport/ramgen/broadcast/live.rm">Click here</a>

You do not need to include the HTTP port number if you selected port 80 during the installation. Here is an example:

    <a href="http://helixserver.example.com/ramgen/broadcast/live.rm">Click here</a>

If your RealOne Player is on the same machine as your Helix Universal Server, you can typically use the local host address:

    <a href="http://localhost/ramgen/broadcast/live.rm">Click here</a>

| For More Information: The `/ramgen/` parameter, which is described in "Launching Media Players and Opening URLs", causes the Web browser to start RealOne Player.

### Step 3: Play the Broadcast

If you created a Web page link, browse the page and click the broadcast link. If you did not create a Web page link, launch RealOne Player, give the File>Open Location command, and enter the following URL:

    rtsp://address:554/broadcast/live.rm

You do not need to include the RTSP port number if you selected port 554 during the installation. Here is an example:

    rtsp://helixserver.example.com/broadcast/live.rm

If your RealOne Player is on the same machine as your Helix Universal Server, you can typically use the local host address:

    rtsp://localhost/broadcast/live.rm

| Note: There may be few seconds of delay before playback commences. This slight broadcasting latency helps to ensure reliability.

| © 2002 RealNetworks, Inc. All rights reserved. For more information, visit RealNetworks Click here if the Table of Contents frame is not visible at the left side of your screen.